#ifndef VOLUMETOOL_H
#define VOLUMETOOL_H

#include <QWidget>

namespace Ui
{
    class volumeTool;
}

class volumeTool final : public QWidget
{
    Q_OBJECT

public:
    explicit volumeTool(QWidget *parent = nullptr);
    // 计算并设置音量
    void calcVolume();
    ~volumeTool() override;

private slots:
    // 静音按钮点击事件处理
    void onSilenceBtnClicked();

signals:
    // 发送静音状态信号
    void setSilence(bool);
    // 发送音乐音量信号
    void setMusicVolume(int volume);

protected:
    // 绘制事件处理
    void paintEvent(QPaintEvent *event) override;
    // 事件过滤器，处理鼠标事件
    bool eventFilter(QObject *watched, QEvent *event) override;

private:
    Ui::volumeTool *ui;
    // 静音状态标志
    bool is_muted_;
    // 音量比例值
    int volume_ratio_;

};

#endif // VOLUMETOOL_H
